X86: Disable PCID/INVPCID for pv
authorLiu, Jinsong <jinsong.liu@intel.com>
Tue, 6 Dec 2011 11:28:04 +0000 (11:28 +0000)
committerLiu, Jinsong <jinsong.liu@intel.com>
Tue, 6 Dec 2011 11:28:04 +0000 (11:28 +0000)
This patch disable PCID/INVPCID for pv.

Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
Committed-by: Keir Fraser <keir@xen.org>
tools/libxc/xc_cpufeature.h
tools/libxc/xc_cpuid_x86.c

index 01a378a7413d5744624d77a2f0252eb7f1846e7f..ff7c3d0042b2ada272195274d7f2ca0273faf30e 100644 (file)
@@ -78,6 +78,7 @@
 #define X86_FEATURE_CX16        13 /* CMPXCHG16B */
 #define X86_FEATURE_XTPR        14 /* Send Task Priority Messages */
 #define X86_FEATURE_PDCM        15 /* Perf/Debug Capability MSR */
+#define X86_FEATURE_PCID        17 /* Process Context ID */
 #define X86_FEATURE_DCA         18 /* Direct Cache Access */
 #define X86_FEATURE_SSE4_1      19 /* Streaming SIMD Extensions 4.1 */
 #define X86_FEATURE_SSE4_2      20 /* Streaming SIMD Extensions 4.2 */
 #define X86_FEATURE_SMEP         7 /* Supervisor Mode Execution Protection */
 #define X86_FEATURE_BMI2         8 /* 2nd group bit manipulation extensions */
 #define X86_FEATURE_ERMS         9 /* Enhanced REP MOVSB/STOSB */
+#define X86_FEATURE_INVPCID     10 /* Invalidate Process Context ID */
 
 #endif /* __LIBXC_CPUFEATURE_H */
index ccd73501ea26af3599f59aa43c0697fef705d739..7b6b439e3bb861034adf81fc8644db5f51ccf8c6 100644 (file)
@@ -485,6 +485,7 @@ static void xc_cpuid_pv_policy(
         }
         clear_bit(X86_FEATURE_XTPR, regs[2]);
         clear_bit(X86_FEATURE_PDCM, regs[2]);
+        clear_bit(X86_FEATURE_PCID, regs[2]);
         clear_bit(X86_FEATURE_DCA, regs[2]);
         set_bit(X86_FEATURE_HYPERVISOR, regs[2]);
         break;